#include<iostream>
using namespace std;
template <class T>
class LinkQueue{
struct LinkQueueNode
{
T data;
LinkQueueNode *link;
LinkQueueNode(T & theData, LinkQueueNode * n=NULL):data(theData),link(n){}
};
LinkQueueNode* front;
LinkQueueNode* back;
public:
LinkQueue(); //构造函数
~LinkQueue(); //析构函数
void EnQueue(T& element); //入队列
T DelQueue(); //出队列
T& GetFront(); //返回队列的头
void MakeEmpty(); //清空队列
bool IsEmpty(); //判断队列是否为空
};
template <class T>
LinkQueue<T>::LinkQueue()
{
front = back = NULL;
}
template <class T>
LinkQueue<T>::~LinkQueue()
{
this->MakeEmpty();
}
template <class T>
void LinkQueue<T>::EnQueue(T& value)
{
if(this->IsEmpty())
front = back = new LinkQueueNode(value);
else
back = back->link = new LinkQueueNode(val
杨辉三角(c++队列模板实现)
最新推荐文章于 2024-06-02 17:27:44 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)